package com.rent.ordersinfo.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.rent.common.annotation.Excel;
import com.rent.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 订单管理对象 rent_orders
 *
 * @author cooper
 * @date 2024-10-15
 */
@TableName(resultMap = "com.rent.ordersinfo.mapper.RentOrdersMapper.RentOrdersResult")
public class RentOrders extends BaseEntity
        {
private static final long serialVersionUID = 1L;

        /** 订单ID */
            @TableId(value = "order_id" , type = IdType.AUTO)
        private Long orderId;

        /** 订单编号 */
                @Excel(name = "订单编号" )
        private String orderNumber;

        /** 用户 */
                @Excel(name = "用户" )
        private Long userId;

        /** 公寓 */
                @Excel(name = "公寓" )
        private Long apartmentId;
            /** 公寓 */
            @Excel(name = "公寓小区" )
            private String addressCommunity;


        /** 公寓信息:包含apartment_province, apartment_city, apartment_neighborhoods, apartment_community, unit, door_Number */
                @Excel(name = "公寓信息:包含apartment_province, apartment_city, apartment_neighborhoods, apartment_community, unit, door_Number" )
        private String apartmentInfo;

        /** 房东联系方式:from rent_apartments */
                @Excel(name = "房东联系方式:from rent_apartments" )
        private String hostNumber;

        /** 房间图片:from rent_room */
                @Excel(name = "房间图片:from rent_room" )
        private String roomPicture;

        /** 订单状态 */
                @Excel(name = "订单状态" )
        private String orderStatus;

        /** 租金金额 */
                @Excel(name = "租金金额" )
        private BigDecimal rent;

        /** 租期开始日期 */
                @JsonFormat(pattern = "yyyy-MM-dd" )
                @Excel(name = "租期开始日期" , width = 30, dateFormat = "yyyy-MM-dd" )
        private Date startDate;

        /** 租期结束日期 */
                @JsonFormat(pattern = "yyyy-MM-dd" )
                @Excel(name = "租期结束日期" , width = 30, dateFormat = "yyyy-MM-dd" )
        private Date endDate;

        /** 支付方式 */
                @Excel(name = "支付方式" )
        private String paymentMethod;

            public String getAddressCommunity() {
                return addressCommunity;
            }

            public void setAddressCommunity(String addressCommunity) {
                this.addressCommunity = addressCommunity;
            }

            public void setOrderId(Long orderId) {
            this.orderId = orderId;
        }

        public Long getOrderId() {
            return orderId;
        }
        public void setOrderNumber(String orderNumber) {
            this.orderNumber = orderNumber;
        }

        public String getOrderNumber() {
            return orderNumber;
        }
        public void setUserId(Long userId) {
            this.userId = userId;
        }

        public Long getUserId() {
            return userId;
        }
        public void setApartmentId(Long apartmentId) {
            this.apartmentId = apartmentId;
        }

        public Long getApartmentId() {
            return apartmentId;
        }
        public void setApartmentInfo(String apartmentInfo) {
            this.apartmentInfo = apartmentInfo;
        }

        public String getApartmentInfo() {
            return apartmentInfo;
        }
        public void setHostNumber(String hostNumber) {
            this.hostNumber = hostNumber;
        }

        public String getHostNumber() {
            return hostNumber;
        }
        public void setRoomPicture(String roomPicture) {
            this.roomPicture = roomPicture;
        }

        public String getRoomPicture() {
            return roomPicture;
        }
        public void setOrderStatus(String orderStatus) {
            this.orderStatus = orderStatus;
        }

        public String getOrderStatus() {
            return orderStatus;
        }
        public void setRent(BigDecimal rent) {
            this.rent = rent;
        }

        public BigDecimal getRent() {
            return rent;
        }
        public void setStartDate(Date startDate) {
            this.startDate = startDate;
        }

        public Date getStartDate() {
            return startDate;
        }
        public void setEndDate(Date endDate) {
            this.endDate = endDate;
        }

        public Date getEndDate() {
            return endDate;
        }
        public void setPaymentMethod(String paymentMethod) {
            this.paymentMethod = paymentMethod;
        }

        public String getPaymentMethod() {
            return paymentMethod;
        }

@Override
public String toString() {
    return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
        .append("orderId" , getOrderId())
        .append("orderNumber" , getOrderNumber())
        .append("userId" , getUserId())
        .append("apartmentId" , getApartmentId())
        .append("apartmentInfo" , getApartmentInfo())
        .append("hostNumber" , getHostNumber())
        .append("roomPicture" , getRoomPicture())
        .append("orderStatus" , getOrderStatus())
        .append("rent" , getRent())
        .append("startDate" , getStartDate())
        .append("endDate" , getEndDate())
        .append("paymentMethod" , getPaymentMethod())
        .append("createTime" , getCreateTime())
            .append("addressCommunity",getAddressCommunity())
            .toString();
}
}